#include <stdio.h>

#ifndef IOTEK_STRING_H_
#define IOTEK_STRING_H_

namespace iotek {

class String {
public:
  String(const char * = NULL);
  ~String();

  String(const String&);

  // String a; a = b; 时执行这个。b是一个String。
  String& operator=(const String&);
  // String a; a = "xxx"; 是执行这个。
  String& operator=(const char *);

  String& operator+=(const String&);
  String operator+(const String&) const;

  String& operator+=(const char *);
  String operator+(const char *) const;

  inline const char* data() const {
    return m_data;
  }
private:
  char * m_data;
};

}

#endif